import request from '@/utils/request'
import Qs from 'qs'

export function listDict(query) {
  return request({
    method: 'get',
    params: {
      _gp: 'admin.dict',
      _mt: 'list',
      ...query
    }
  })
}

export function createDict(data) {
  return request({
    method: 'post',
    data: Qs.stringify({
      _gp: 'admin.dict',
      _mt: 'create',
      dictDO: JSON.stringify(data)
    })
  })
}

export function updateDict(data) {
  return request({
    method: 'post',
    data: Qs.stringify({
      _gp: 'admin.dict',
      _mt: 'update',
      dictDO: JSON.stringify(data)
    })
  })
}

export function deleteDict(id) {
  return request({
    method: 'post',
    params: {
      _gp: 'admin.dict',
      _mt: 'delete',
      id: id
    }
  })
}

export function dicListByDatatype(datatype) {
  return request({
    method: 'post',
    params: {
      _gp: 'admin.dict',
      _mt: 'dicListByDatatype',
      datatype: datatype
    }
  })
}

export function initDicListByDatatype(dicList, datatype) {
  dicList.splice(0, dicList.length)
  dicListByDatatype(datatype)
    .then(response => {
      response.data.data.forEach(element => {
        dicList.push(element)
      })
    })
    .catch(() => {
    })
}

